package com.atis.warplot.database.utils;

import java.io.IOException;
import java.util.List;

import org.hibernate.Session;

import com.atis.warplot.database.Construccion;
import com.atis.warplot.database.Unidad;

/**
 * @author Donato Galo
 *
 */
public class InicializarBDWarplot {

	public static void main(String[] args) {

		Session session = null;

		try {
			session = SessionHibernate.getInstance().getSession();
			session.beginTransaction();

			List<Unidad> listaUnidades = null;
			try {
				listaUnidades = CargadorDatos.cargarDatosUnidades( //
						"datos-unidades");
			} catch (IOException e) {
				e.printStackTrace();
			}

			List<Construccion> listaConstrucciones = null;
			try {
				listaConstrucciones = CargadorDatos.cargarDatosConstucciones( //
						"datos-construcciones");
			} catch (IOException e) {
				e.printStackTrace();
			}

			if (listaUnidades != null) {

				for (Unidad unidad : listaUnidades) {
					session.save(unidad);
				}

			}

			if (listaConstrucciones != null) {

				for (Construccion construccion : listaConstrucciones) {
					session.save(construccion);
				}

			}

		} finally {

			// ----------------------------------------
			// whatever happens, always close
			// ----------------------------------------

			if (session != null) {
				if (session.getTransaction() != null) {
					session.getTransaction().commit();
				}
				session.close();
			}

		}

	}

}
